برچسب:
نویسنده: استخدام کار
برچسب: پشتیبانی از گوگل پلی,
نویسنده: استخدام کار
برچسب: نحوه ساخت استایل در ورد,نحوه ساخت استایل در فتوشاپ,نحوه ساخت استایل,آموزش ساخت استایل در فتوشاپ,آموزش ساخت استایل در ورد,آموزش ساخت استایل فتوشاپ,آموزش ساخت استایل,آموزش ساخت استایل ویبولتین,آموزش ساخت استایل برای فتوشاپ,آموزش ساخت استایل شیشه ای,
نویسنده: استخدام کار
برچسب: الگوریتم جدید اینستاگرام,
نویسنده: استخدام کار
برچسب: طوفان,طوفان نوح,طوفان مهردادیان,طوفان تهران,طوفان شن,طوفان کاترینا,طوفان دزدان دریایی,طوفان خورشیدی,طوفان طبس,طوفان فکری,
نویسنده: استخدام کار
برچسب:
نویسنده: استخدام کار
برچسب:
نویسنده: استخدام کار
برچسب: لباهنگ خندوانه,لباهنگ اشكان خطيبي,لباهنگ,لباهنگ ارشا اقدسی,لباهنگ خندوانه اپارات,
نویسنده: استخدام کار
برچسب: انتقال داده بین دو کامپیوتر,انتقال داده بین کامپیوتر و موبایل,انتقال داده بین دو لپ تاپ,انتقال اطلاعات بین دو کامپیوتر,انتقال اطلاعات بین دو گوشی,انتقال اطلاعات بین دو گوشی اندروید,انتقال اطلاعات بین کامپیوتر و اندروید,انتقال اطلاعات بین صفحات در asp net,انتقال اطلاعات بین گوشی و کامپیوتر,انتقال اطلاعات بین دو آیفون,
نویسنده: استخدام کار
برچسب: گوگل حالا,
نویسنده: استخدام کار
برچسب: مقایسه ای بین سه سیستم عامل,
نویسنده: استخدام کار
برچسب: چه انتظاراتی از همسر خود دارید؟,چه انتظاراتی از معلم خود دارید,چه انتظاراتی از همسر خود داشته باشیم,مردان چه انتظاراتی از زنان دارند؟,
نویسنده: استخدام کار
برچسب:
نویسنده: استخدام کار
برچسب:
نویسنده: استخدام کار
برچسب:
نویسنده: استخدام کار
برچسب: wikipedia,will smith,wikileaks,wingstop,wish,wimbledon,william shakespeare,winifer fernandez,windows 10,windsor,
نویسنده: استخدام کار
امروزه اپلیکیشن های موبایل رواج گسترده ای بین کاربران یافته اند و ساخت و توسعه اپلیکیشن به یکی از پرطرفدارترین مشاغل تبدیل شده، شرایط حاکم موجب شده تا هر روزه شاهد ورود یک اپلیکیشن جدید به مارکت های گوناگون باشیم، اپلیکیشن های پیام رسان یکی از محبوب ترین دسته بندی های اپلیکیشن ها می باشند، اما آیا به اندازه کافی اپلیکیشن از این نوع در مارکت ها نداریم و میدان برای ورود اپلیکیشن های جدید باز است؟ به نظر می رسد که دیزنی تفکر متفاوتی نسبت به این قضیه دارد، این کمپانی انیمیشن سازی نام آشنا اخیرا اقدام به رونمایی از اپلیکیشن پیام رسان جدید خود با عنوان “Disney Mix” نموده است. توسعه دهندگان این اپلیکیشن تلاش کرده اند تا اپلیکیشن خود را با ویژگی خانواده پسند آن از سایر نمونه های موجود در مارکت متمایز گردانند، به ادعای دیزنی این اپلیکیشن بی خطرترین، بامزه ترین و سرزنده ترین اپلیکیشن پیام رسان موجود می باشد. علاوه بر قابلیت های متعارف پیام رسانی، این اپلیکیشن با تصویرساز بصری، چندین مینی گیم و تعدادی ابزار که والدین را قادر به تغییر و کنترل تجربه کاربری کودکان خود می گرداند، می درخشد و این اپلیکیشن را می توان به عنوان گزینه ای مناسب برای کودکان کم سن و سال با حداقل چهار سال برشمرد.
این اپلیکیشن امن ماندن، محتاط بودن با افراد غریبه آنلاین و تمیز نگه داشتن ارتباطات را به کاربران خود یادآوری می کند. با هر بار باز کردن و لاگین شدن در اپلیکیشن این تذکرات بر روی صفحه نمایش ظاهر می شوند، اما چندان آزاردهنده نیستند. عملیات اصلی اپلیکیشن به خوبی کار می کند و پر از استیکرهایی چت با شخصیت های محبوب انیمیشن های دیزنی است. “Disney Mix” روش ساده ای برای ساخت آوارتارهای کارتونی شخصی سازی شده که در چت ها و بازی های درون اپلیکیشن ظاهر می شوند، در اختیار کاربران خود قرار داده است.

به بیان توسعه دهندگان اپلیکیشن، آنها در تلاش جهت ساخت بازی های بیشتر و امکانات به اشتراک گذاری چندرسانه ای هستند که در آینده ای نه چندان دور در بازی جای خواهند گرفت. این اپلیکیشن پیام رسان یک ویژگی یکپارچه به نام “Whistle” را نیز در خود جای داده است، از این قابلیت می توان برای فراخوانی یک ناظر بزرگسال به چت بهره جست.
در خلال رونمایی و معرفی اپلیکیشن، دیزنی والدین را به ارائه بازخورد درباره این اپلیکیشن فرا خواند و از آنها درخواست کرد تا در صورتی که ایده ای برای امن تر و خانواده پسندتر کردن اپلیکیشن دارند، آنها را از این بابت مطلع سازند.
با تمامی اوصاف باید منتظر بود و دید که “Disney Mix” تا چه اندازه برای افرادی که حجم چشمگیری از سایر اپلیکیشن های پیام رسان مانند فیسبوک مسنجر، واتس اپ و وایبر را مورد استفاده قرار می دهد، جذاب خواهد بود. آنطور که پیداست دیزنی بر روی والیدن حساب باز کرده که این اپلیکیشن را بر روی گوشی های کودکان خود نصب کنند، اما تنها گذشت زمان میزان موفقیت این استراتژی را به نمایش خواهد گذاشت. در حال حاضر اپلیکیشن حدود 40 هزار دانلود را از آن خود کرده است، این رقم برای روزهای نخست رونمایی این اپلیکیشن چندان بد به نظر نمی رسد، اما برای یک کمپانی به بزرگی و شهرت و محبوبیت دیزنی و مخاطبین هدف که بچه و حداقل دو اسمارت فون دارند چندان تاثیرگذار نیز نمی باشد. در هر صورت چنانچه به دنبال یک اپلیکیشن پیام رسان جدید نیستید، اما از طرفداران پر و پا قرص دیزنی محسوب می شوید برخی از بازی های اندرویدی دیزنی را دانلود نمایید.
منبع:
http://www.androidheadlines.com
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
گوشی های خانواده گلکسی اس 7 سامسونگ حدود 26 میلیون فروش به صورت جهانی داشته اند و از گوشی گلکسی نوت 7 که به تازگی رونمایی شده، انتظار فروش بیشتری نسبت به نسخه 5 خود می رود، با این اوصاف آینده برند گلکسی سامسونگ بسیار روشن می نماید. روز سه شنبه گوشی گلکسی نوت 7 پس از مدت ها انتظار رونمایی شد و مدیر بخش موبایل کمپانی سامسونگ، Koh Dong-jin بر روی صحنه حاضر شد تا به شکل دقیق تر و جزئی تر آینده کمپانی را برای حضار در جلسه شرح دهد، او در سخنرانی خود از بازار موبایل، برند گلکسی و آینده هر دو سخن گفت. سخنان او بر روی رویکردهای بازار، برند گلکسی و تاثیرگذاری این دو بر روی یکدیگر و نیز برنامه های جاری و آینده کمپانی برای این برند متمرکز شده بودند.

Koh از چالش های موجود در مارکت جهانی سخن به میان آورد و بیان داشت که یکی از بزرگ ترین رقبای سامسونگ سازندگان چینی هستند که در تلاش برای محبوبیت یافتن در جهان و تسلط یافتن بر مارکت های در حال توسعه و سطح پایین می باشند و در واکنش به این رقابت، کمپانی سامسونگ سعی دارد تلاش های خود در زمینه بخش بودجه جهانی را وسعت بخشد. او همچنین به روند معطوف به سوی صفحات نمایش بزرگ در گوشی ها نیز اشاره کرد و بیان داشت که سامسونگ قصد دارد تلاش های خود در این زمینه را همراه با برند گلکسی نوت خود ادامه دهد. Koh در طول سخنرانی خود اندکی هم درباره سری گوشی های گلکسی اس 7 سخن گفت و مدعی شد که موفقیت گوشی های خانواده گلکسی اس 7 به ابتکارات و بهبودهای بامعنای گنجانده شده در این گوشی مربوط می شود و این مجموعه امکانات مورد توجه گستره انبوهی از مشتریان قرار گرفته اند، یکی از این قابلیت ها Samsung Pay است که محبوبیت گوشی های سامسونگ را موجب شده، به اعتقاد او بخش اعظمی از موفقیت های سامسونگ در گروی بازاریابی قدرتمند کمپانی می باشد.
Koh اظهار داشت که کمپانی در آینده ای نزدیک قادر خواهد بود تا اسکنرهای عنبیه چشم را که در گوشی گلکسی نوت 7 نیز شاهد آن بودیم، در گوشی های پرچمدار و میان رده سامسونگ نیز جاسازی کند. صفحات منحنی توسط گوشی گلکسی نوت اج تبلیغ شد و توسط گوشی گلکسی اس 6 اج محبوبیت یافت و این نوع صفحات به یکی از اجزای اصلی برند تبدیل شده و برگ برنده ای را در دست کمپانی قرار داده است.
به بیان Koh کمپانی سخت در تلاش است تا امکانات و رابط های مبتنی بر طراحی اج را بهبود ببخشد، او در آخر اشاره ای مختصر به صفحات تاشو کرد، پتنت های اخیر کمپانی فعالیت های آنها در زمینه ساخت یک گوشی تاشوی پرچمدار را به تصویر می کشند، اما به بیان Koh تکنولوژی و نرم افزار هنوز آمادگی و کیفیت لازم برای یک محصول مشتری را ندارند و این قبیل پیشرفت ها بسیار زمان بر می باشند.
منبع:
http://www.androidheadlines.com
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
کمپانی اپل یک استارتاپ نرم افزاری به نام Turi را که در زمینه هوش مصنوعی فعالیت می کند، خریداری کرد، این استارتاپ در گذشته با نام های GraphLab و Dato شناخته شده بود.
به غیر از تایید این خرید هیچگونه اطلاعات دیگری از سوی کمپانی اپل دریافت نشده، به بیان یکی از سخنگویان اپل به VentureBeat، اپل هر از چند گاهی اقدام به خریداری کمپانی های کوچک می کند و ما معمولا اهداف و برنامه های خود را مورد بحث قرار نمی دهیم.
Carlos Guestrin که بنیان گذار و مدیر اجرایی استارتاپ مذکور است استاد یادگیری ماشینی Amazon در دانشگاه واشنگتن می باشد. از سال 2012 که Guestrin این مقام را در دست گرفت، Amazon به پرورش بخش یادگیری ماشینی پرداخته است. این استارتاپ تعدادی از کارمندان سابق مایکروسافت را به استخدام در آورد که خود امری عجیب و جالب است.

اپل اخیرا اقدام به خریداری استارتاپ های یادگیری ماشینی دیگری مانند Emotient ،Perceptio و VocalIQ نموده است.
Databricks ،H2O و Neo4j را می توان به عنوان رقبای Turi برشمرد، اما به این خاطر که Turi هوش مصنوعی را به تکنولوژی خود اضافه کرده، شاهد رقابت در آن حوزه نیز شده است.
سرمایه گذاران Turi شامل Opus Capital Ventures ،Vulcan Capital ،Madrona Venture Group و NEA هستند. این استارتاپ در سال 2013 و در سیاتل پایه گذاری شد و از Adobe ،Automattic ،ExxonMobil ،Pandora ،PayPal و Zillow نیز می توان به عنوان مشتریان آن یاد کرد.
انجین SFrame از نرم افزار GraphLab Create عموما با زبان سی پلاس پلاس نوشته شده و در GitHub تحت لیسانس BSD در دسترس می باشد و GraphLab Create هم مبنی بر نرم افزار GraphLab PowerGraph است که در دانشگاه Caegie Mellon و در سال 2009 راه اندازی شد.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
با گسترش تعداد اپلیکیشن هایی که کاربران در طول روز مورد استفاده قرار می دهند، دردسر حفظ کردن و وارد نمودن رمزهای عبور برای آن دسته از اپلیکیشن هایی که نیاز به احراز هویت دارند، افزایش پیدا می کند، از این رو کمپانی های مختلف سخت در تلاش اند تا به نحوی این شرایط را برای کاربران تسهیل بخشند، کمپانی گوگل که در تمامی زمینه ها به نحوی فعالیت دارد در پروژه اپن سورس جدید خود قصد دارد تا کاربران را از دردسر به خاطرسپاری رمزهای عبور رها کرده و آنها را فورا وارد اپلیکیشن های اندروید موردنظر نماید، گوگل امیدوار است بتواند این ویژگی را در تمامی پلتفرم ها منتشر سازد. گوگل مصرانه وارد میدان جنگ علیه رمزهای عبور شده و برای این کار یک سیستم اپن سورس را مورد استفاده قرار داده که کاربر را به صورت فوری و امن وارد اپلیکیشن های گوشی خود می کند و از پسورد منیجر برای این منظور بهره می جوید.
گوگل از طریق شراکت با Dashlane و سایر پسورد منیجرها در این پروژه اپن سورس جدید Open Yolo یا You Only Login Once نام گرفته، قصد دارد با ارائه یک پیوند امن بین اپلیکیشن های اندروید شخص ثالث و پسورد منیجرها به هدف خود برسد. با استفاده از این سیستم کاربران تنها به پسورد منیجر خود وارد شده و به تمامی اپلیکیشن های خود دسرسی پیدا می کنند و در این میان نیازی به تایپ مجدد نام کاربری و رمز عبور نیست.
Malaika Nicholas مدیر انجمن Dashlane می گوید: ما باید یک قرم جلوتر از تقاضای بازار باشیم، به همین منظور گوگل و Dashlane در حال همکاری جهت ساخت یک راه حل احراز هویت اپلیکیشن های اندرویدی ساده با پذیرش عمومی هستند که امنیت آنلاین کاربران را نیز افزایش دهد.
در آینده این API فراتر از گوشی های اندروید خواهد رفت و به طور عمومی و جهانی در اپلیکیشن ها و پسورد منیجرها جاسازی شده و در تمامی پلتفرم ها و سیستم عامل ها مورد استفاده قرار خواهد گرفت.

بسیاری از پسورد منیجرهای کنونی به کاربران امکان ورود با استفاده از قابلیت های دسترسی اسمارت فون اندرویدی را می دهند که مانند یک کیبورد مجازی جهت تایپ کردن جزئیات لاگین در باکس های پسورد عمل می کند، اما پیاده سازی آنها چندان زیبا و عمومی نیست.
آی او اس کمپانی اپل دارای راه حل یکپارچه تری می باشد و به پسورد منیجرها امکان لینک مستقیم در باکس های پسورد را می دهد، اما متاسفانه اپلیکیشن های اندکی از این قابلیت پشتیبانی می کنند.
استفاده مجدد از پسوردهای ساده به یک مشکل امنیتی حاد تبدیل شده، در حالی که پسوردهایی با کمتر از 14 کاراکتر دیگر پیشنهاد نمی شوند، برای یک کاربر عادی تقریبا غیرممکن است که تعداد زیادی از پسوردهایی را که به طور روزانه نیاز دارند، به خاطر سپارد.
سیستم های امنیت بایومتریک که از اثر انگشت و یا عنبیه چشم برای احراز هویت کاربر استفاده می کنند، اخیرا محبوبیت زیادی یافته اند، اما نمی توان آنها را در تمامی شرایط مورد استفاده قرار داد.
مشارکت با پسورد منیجرها نخستین تلاش گوگل در جهت ساخت سیستمی که کاربر را از به حاطرسپاری رمزهای عبور آسوده خاطر می کند، نیست. سیستم لاگین پوش نوتیفیکیشن گوگل که هم اکنون به عنوان یک ابزار احراز هویت دو مرحله ای مورد استفاده قرار می گیرد، اخیرا نیاز به چندین کد جهت اعتبارسنجی لاگین به محصولات گوگل را حذف کرد.
سیستم قفل هوشمند کمپانی که در اندروید نیز پیاده سازی شده امکان ورود به گوشی با استفاده از روش های متنوعی مانند حرکات بدن، صورت، صدا و یا موقعیت را می دهد. قفل هوشمند نیز امکان به اشتراک گذاری محدود پسورد از آنهایی که در کتابخانه پسوردهای کروم ذخیره شده اند را می دهد.
در عین حال Trust API Project نیز جهت شناسایی هویت کاربر از رفتار و روشی که او گوشی را مورد استفاده قرار می دهد طراحی شده و نیاز به وارد کردن پسوردها را از میان برمی دارد.
اپل نیز اخیرا یک سیستم جدید را افشا کرد که به کاربران اپل واچ امکان وارد شدن به لپ تاپ مک با نزدیک شدن به آن را می دهد و برای این کار نیازی به وارد کردن رمز عبور احساس نمی شود. تمامی این تلاش ها از سوی کمپانی های مختلف نویدبخش آینده روشن احراز هویت اما بدون لزوم وارد کردن پسورد به صورت مکرر می باشند.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
فیسبوک به رونمایی از یک قابلیت جدید و آزماشی برای اپلیکیشن موبایل خود پرداخته که شباهت بسیار زیادی به فیلترهای لایو اسنپ چت دارد و این قابلیت فیلترهایی را به تصاویر و ویدیوهای گرفته شده شما می افزاید. اما زیاد هیجان زده نشوید، اولا این فیلترهای creative effects بسیار محدودند و فعلا تنها تم های مربوط به بازی های المپیک را در خود جای داده اند، ثانیا در حال حاضر تنها کاربران اندروید و آی او اس در کانادا و کاربران آی او اس در برزیل به این ویژگی جدید از اپلیکیشن فیسبوک دسترسی دارند.

اگر بخت با شما یار باشد و هم اکنون در یکی از کشورهای مذکور باشید، نوتیفیکیشنی را دریافت می کنید که از شما می خواهد تا به این قابلیت جدید اجازه دسترسی به دوربین گوشی، به محض باز شدن اپلیکیشن را بدهید، با این کار دوربین دقیقا در قسمت بالای فید اخبار قرار می گیرد و با استفاده از آن به راحتی قادر به گرفتن عکس های جدید می شوید.

بنا به گفته های فیسبوک این قابلیت نیز مشابه Stories اینستاگرام که چند روز پیش منتشر شد، بخشی از استراتژی آنها جهت تبدیل به یک شبکه ویدیو-محور می باشد. اما باید این نکته را مد نظر داشت که احتمال دارد این قابلیت تا زمان انتشار گسترده آن در آمریکا و سایر کشورها دستخوش تغییرات گسترده ای گشته و عملکرد آن تغییر پیدا کند. انتخاب گسترده تر برای این قابلیت جدید چیزی است که یقینا کاربران از اپلیکیشن انتظار دارند، تنها در این شرایط است که آنها اپلیکیشن های فیلتر عکس مستقل خود را که معمولا گزینه های متعددی در خود جای داده اند کنار گذاشته و این محصول فیسبوک را مورد استفاده قرار می دهند.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
در مطلب قبلی مثالی از نحوه استفاده از عبارت های منظم در سوئیفت را شرح دادیم، در ادامه قصد داریم با بیان مثالی دیگر شما را با کاربرد عبارت های منظم آشنا کنیم، با ما همراه باشید.
مثالی پیشرفته تر از کاربرد عبارت های منظم در سوئیفت
متد (:matchInString(_:options:range یکی از ساده ترین متدهاست که به (:enumerateMatchesInString(_:options:range:usingBlock که قابل انعطاف ترین و عمومی ترین متد در کلاس NSRegularExpression است متکی می باشد. این متد یک بلاک را پس از هر بار تطبیق فراخوانی می کند و شما را قادر به اجرای عملیات دلخواه خود می گرداند.
با ارسال یک یا بیشتر قانون تطبیق با استفاده از ثابت های NSMatchingOptions، شما می توانید از فراخوانی بلاک در سایر موقعیت ها نیز اطمینان حاصل نمایید. برای عملیات طولانی، می توانید تعیین کنید که بلاک به صورت دوره ای فراخوانی شده و یا عملیات در یک زمان مشخص پایان پذیرد. با استفاده از گزینه ReportCompletion می توانید تعیین کنید که بلاک باید پس از تکمیل فراخوانی شود.
بلاک دارای پارامترهای فلگ است که تمامی وضعیت ها را گزارش می دهد و با توجه به آنها قادر به تصمیم گیری درباره عملیات موردنظر هستید. مشابه سایر متدهای شمارش در فریم ورک Foundation پایان دادن به عملیات بلاک نیز در اختیار شما قرار دارد. برای مثال می توان به شرایطی اشاره کرد که پس از جستجوی طولانی موفق به یافتن تطبیق موردنظر خود نشده و یا تطبیق های کافی برای شروع پردازش پیدا کرده اید.
در این سناریو در متن به دنبال رشته هایی شبیه به تاریخ هستیم و قصد داریم وجود یک تاریخ خاص در آنها را بررسی کنیم، برای این منظور تصور می کنیم که رشته های تاریخ دارای ساختار زیر هستند:
– سال که دارای دو یا چهار رقم است.
– تنها شامل قرن کنونی یعنی بین 2000 تا 2099، در نتیجه 1982 رد شده و 16 به معنای 2016 است.
– یک جداکننده پس از آن می آید.
– یک عدد بین 1 یا 12 که نشان دهنده ماه است پس از آن ظاهر می شود.
– یک جداکننده در ادامه می آید.
– یک عدد از 1 تا 31 که نشان دهنده روز است در ادامه ظاهر می شود.
عدد صفر قبل از ماه و تاریخ های یک رقمی می آید و جداکننده های معتبر شامل دش، نقطه و / هستند، لازم به ذکر است که تنها شرایط مذکور را در اعتبارسنجی تاریخ مد نظر قرار می دهیم، برای نمونه تاریخ هایی به صورت 2000-04-31 هم در حالی که آوریل تنها 30 روز دارد معتبر شناخته شده و یا در تاریخ 2009-02-29 سال 2009 کبیسه نیست بنابراین ماه فوریه تنها 28 روز دارد، اما اگرچه این تاریخ ها واقعی نیستند ولی در این مثال معتبر شناخته می شوند.
کد زیر را به playground اضافه کنید تا به صورت گام به گام به شرح آنچه در کد نوشته شده بپردازیم.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
// (1): typealias PossibleDate = (year: Int, month: Int, day: Int) // (2): func dateSearch(text: String, _ date: PossibleDate) -> Bool { // (3): let datePatte = "\b(?:20)?(\d\d)[-./](0?[1-9]|1[0-2])[-./](3[0-1]|[1-2][0-9]|0?[1-9])\b"
let dateRegex = try! NSRegularExpression(patte: datePatte, options: []) // (4): var wasFound: Bool = false // (5): dateRegex.enumerateMatchesInString(text, options: [], range: NSRange(location: 0, length: text.characters.count)) { // (6): (match, _, stop) in var dateArr = [Int]() for in 1...3 { let range = match!.rangeAtIndex() let r = text.startIndex.advancedBy(range.location) ..< text.startIndex.advancedBy(range.location+range.length) dateArr.append(Int(text.substringWithRange(r))!)
} // (7): if dateArr[0] == date.year && dateArr[1] == date.month && dateArr[2] == date.day { // (8): wasFound = true stop.memory = true } }
retu wasFound } let text = " 2015/10/10,11-10-20, 13/2/2 1981-2-2 2010-13-10" let date1 = PossibleDate(15, 10, 10) let date2 = PossibleDate(13, 1, 1) dateSearch(text, date1) // retus true dateSearch(text, date2) // retus false |
گام 1
تاریخ هایی که وجود آنها را چک می کنیم دارای یک فرمت استاندارد هستند و تنها یک عدد دورقمی را برای سال ارسال می کنیم و 16 به معنای 2016 می باشد.
گام 2
عملیات موردنظر شمارش تطبیق هایی است که شبیه تاریخ هستند، سپس باید سال، ماه و روز را از تاریخ خارج کرده و چک کنیم که آیا با تاریخ ارسال شده مطابقت دارند یا خیر.
یک تابع برای انجام این کار می سازیم، این تابع در صورت پیدا شدن تاریخ true و در غیر این صورت false را برمی گرداند.
گام 3
الگوی تاریخ دارای ویژگی های جالبی است:
– به بخش ? ( ?:20 ) توجه کنید، چنانچه آن را با ? (20) جایگزین کنیم به ابن معنا خواهد بود که وجود 20 در سال که نمایش دهنده هزاره است مشکلی ندارد. پرانتزها برای گروه بندی به کار می روند اما ساخت کپچر گروپ با استفاده از آنها هم امکان پذیر است و بیت ?: هم برای این کار مورد استفاده قرار می گیرد.
– جداکننده های محتمل در داخل مجموعه کاراکتر [/.-] نیازی به اسکیپ کردن برای اینکه معنای لفظی خود را بدهند ندارند. – در ابتدا قرار گرفته بنابراین نمی تواند نماینده یک محدوده باشد، کاراکتر . هم نمایش دهنده هیچ کاراکتری در داخل مجموعه کاراکتر نمی باشد.
– استفاده گسترده ای از نوار عمودی جهت نمایش احتمالات ماه و اعداد تاریخ شده است.
گام 4
متغیر بولین notFound مقدار بازگشتی تابع است و نشان می دهد تاریخی که به دنبالش بودیم پیدا شده یا خیر.
گام 5
در این مرحله متد (:enumerateMatchesInString(_:options:range:usingBlock فراخوانی شده و هیچیک از گزینه ها را مورد استفاده قرار نداده و کل محدوده را برای جستجو می فرستیم.
گام 6
آبجکت بلاکی که پس از هر تطبیق فراخوانی می شود دارای سه پارامتر می باشد:
– تطبیق (یک NSTextCheckingResult).
– فلگ هایی که نشان دهنده وضعیت کنونی فرآیند تطبیق هستند.
– متغیر بولین stop که می توان آن را در بلاک ست کرد تا زودتر از بلاک خارج شود.
ما از این بولین به منظور خروج از بلاک استفاده می کنیم، اگر تاریخی که به دنبالش بودیم پیدا شود دیگر نیازی به جستجوی بیشتر نمی باشد، کدی که اجزای تاریخ را خارج می کند مشابه مثال قبلی می باشد.
گام 7
در این مرحله باید به چک کردن اجزای تاریخ بپردازیم و ببینیم آیا با زیررشته موردنظر مطابقت دارند یا خیر.
گام 8
چنانچه یک تطبیق پیدا شود notFound را به مقدار true ست کرده و با ست کردن stop.memory به مقدار true از بلاک خارج می شویم. دلیل این کار این است که stop یک pointer-to-a-boolean است و سوئیفت از طریق ویژگی memory با حافظه pointed-to سر و کار دارد.
زیررشته 2015/10/10 در متن با (PossibleDate(15, 10, 10 مطابقت دارد، به همین دلیل تابع در حالت اول true برمی گرداند. هیچ رشته ای در متن با (PossibleDate(13, 1, 1 که همان تاریخ 01-01-2013 است مطابقت ندارد بنابراین فراخوانی تابع false را برمی گرداند.

جمع بندی
در این مطلب نحوه کار عبارت های منظم به شما شرح داده شد، اما هنوز هم چیزهای زیادی برای یادگیری وجود دارد، برای نمونه می توان به lookahead و lookbehind و بکار بردن عبارت های منظم برای رشته های یونیکد اشاره کرد. چنانچه تمایلی به بررسی دقیق تر این جزئیات نداشته باشید، تا به این مرحله قادر به تشخیص شرایطی که عبارت های منظم در آنها به کار خواهند آمد شده اید و یک نگرش کلی از نحوه طراحی عبارت های منظم به منظور حل مشکلات مرتبط با جستجوی الگوها پیدا کرده اید.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
طرفداران گوشی های سامسونگ مدت زمان زیادی منتظر بودند، اما بالاخره انتظارها به پایان رسید و سامسونگ به رو نمایی از جدیدترین گوشی پرچمدار خود یعنی گلکسی نوت 7 پرداخت. در طول این ها ماه ها، هفته ها و روزها شاهد شایعات متعددی بودیم که همگی در تلاش برای مشخص ساختن ویژگی های این گوشی بودند. اما کدامیک از این حدسیات صحت داشتند و کدامیک تنها در حد یک شایعه بودند؟ گوشی گلکسی نوت 7 میزبان چه امکانات خوب و بدی است؟ آیا نوت 7 بهترین گوشی سال 2016 تلقی می شود؟ در ادامه مروری سریع و اجمالی بر روی بهترین جوانب گلکسی نوت 7، بدترین ویژگی های آن و حتی ویژگی های نه چندان زیبای آن خواهیم داشت، البته اگر چنین ویژگی های وجود داشته باشند، با ما همراه باشید.

جوانب خوب

داشتن ویژگی های خوب متعدد برای گوشی گلکسی نوت 7 مورد انتظار است، چرا که گلکسی نوت 7 آخرین گوشی پرچمدار از بزرگ ترین سازنده گوشی های اندرویدی می باشد. از این رو از این گوشی انتظار می رود که ویژگی ها و امکانات بسیار خوبی را گرد هم آورده باشد. نخستین و مشهودترین جنبه مثبت گوشی به طراحی و ظاهر گوشی ارتباط پیدا می کند، این گوشی در قسمت پشت و جلو دارای شیشه است و شیشه های آن از نوع Gorilla Glass 5 می باشند و می توان گفت که گلکسی نوت 7 اولین گوشی است که با آخرین نسخه از Gorilla Glass پوشانده شده است.
به یقین می توان گفت که سامسونگ یکی از بهترین سازندگان صفحات نمایش بوده و سری گوشی های گلکسی اس و گلکسی نوت نیز جدیدترین و قدرتمندترین صفحات نمایش را در خود جای داده اند. صفحه نمایش این گوشی تفاوت چندان محسوسی با گلکسی اس 7 ندارد، اما بدون شک گلکسی اس 7 دارای یکی از بهترین صفحات نمایش در بوده و گوشی گلکسی نوت 7 نیز میزبان یکی از بهترین صفحات نمایش در بازار شده و سامسونگ هم با پایبندی بر تاکید خود بر صفحات منحنی شکل، صفحه نمایش آخرین مدل سری گوشی های نوت خود را نیز به صورت منحنی ساخته است. علاوه بر صفحه نمایش فوق العاده، اسکنر عنبیه چشم، دیگر ویژگی قدرتمند این گوشی تلقی می شود، گلکسی اس 7 و گلکسی نوت 7 نخستین گوشی ها در سری خود تلقی می شوند که این قابلیت کاربردی را در خود جای داده اند، استفاده از عنبیه چشم یک روش احراز هویت افزونه نسبت به اثر انگشت می باشد، از این رو با چنین ترفندهای امنیتی این گوشی به یکی از امن ترین گوشی های موجود در بازار تبدیل می شود. این ویژگی در کنار قابلیت های امنیتی KNOX که در آخرین و جدیدترین گوشی های سامسونگ تعبیه شده ارائه دهنده امنیت بالای این رده از گوشی ها می باشد.
ویژگی خوب دیگر این گوشی به در بر گرفتن قابلیت اتصال از نوع USB Type-C باز می گردد. گوشی گلکسی اس 7 این نوع جدید از یو اس بی را در خود جای نداده و همین امر به انتقادات گسترده ای از آن منجر شد، اما گلکسی نوت 7 نه تنها این نوع جدید از یو اس بی را بکار برده، بلکه سامسونگ یک آداپتور میکرو یو اس بی بهUSB Type-C رایگان هم همراه گوشی گلکسی نوت 7 ارائه داده است.
ویژگی های خوب دیگری نیز در این گوشی جدید سامسونگ به چشم می خورند، از آن جمله می توان به سرعت شارژ بیشتر، شارژ بی سیم و شارژ بی سیم سریع تر اشاره کرد، البته این ویژگی ها در گوشی های گلکسی اس 7 و Edge نیز به چشم می خورند. این ویژگی ها بسیار خوبند، اما به سرعت در حال تبدیل به مشخصات استاندارد برای گوشی های سامسونگ می شوند. S Pen این گوشی ضد آب بوده و میزبان برخی بهبودهای طراحی نیز شده است.
جوانب بد

با در نظر گرفتن این موضوع که گوشی گلکسی نوت 7 یک گوشی پرییوم با امکانات بسیار خوب است، وجود ویژگی های بد اندک نیز برای آن انتظار می رود. در صورت بررسی بیشتر و عمیق تر ویژگی های این گوشی و مقایسه آن با سایر گوشی ها، بدون شک برخی از مشکلات مشهود و قابل توجه نیز به چشم می خورند که عمده ترین آنها به عدم تکامل صریح مشخصات گوشی ارتباط پیدا می کند. برای نمونه رم این گوشی را در نظر بگیرید، گلکسی نوت 7 یک رم 4 گیگابایتی را در خود جای داده است، این مقدار رم کافی و مناسب به نظر می رسد، اما بهترین میزان برای یک گوشی که در نیمه دوم 2016 عرضه شده قلمداد نمی شود و انتظارات از این جنبه بیشتر بود، مخصوصا با در نظر گرفتن این موضوع که گوشی های گلکسی اس 7 و Edge نیز که در نیمه نخست سال رونمایی شدند، همین مقدار رم را در خود جای داده اند، پیش از رونمایی گوشی شایعات حاکی از آن بود که نوت 7 یک رم 6 گیگابایتی را در خود جای خواهد داد، اما آنطور که پیداست این موضوع صحت ندارد و همین موضوع بسیاری از افراد را ناامید کرده است.
یکی دیگر از جانبی که بد تلقی می شود به قابلیت های عمومی ارتباط پیدا می کند که سامسونگ در این نسخه از گوشی ارائه داده است. سامسونگ امکانات متعددی را در گوشی گلکسی نوت 7 جای داده، اما آیا این امکانات بیش از حد نیستند؟ در کنار گزینه های فروشی همراه گوشی یعنی قلم دیجیتال و نرم افزار عمومی، گوشی دارای ویژگی شارژ بی سیم، حسگر اثر انگشت، اسکنر عنبیه، ابزار ساخت GIF، گواهی IP68 و غیره می باشد و ممکن برخی تصور کنند که سری گوشی های گلکسی بسیار غلط انداز می شوند. این ویژگی ها که برای اکثر افراد مورد انتظار بودند به ویژگی دیگری می انجامد که چندان غیرمنتظره نیز نمی باشد و این ویژگی قیمت گوشی است. امروزه گوشی ها ارزان تر و مقرون به صرفه تر می شوند، اما سامسونگ در تلاش است تا قیمت گوشی های پریمیوم خود را حفظ کند و قیمت این گوشی نسبتا بالا و به طور غیررسمی مبلغ 849 دلار اعلام شده است.
شاید این موضوع کمی ناخوشایند به نظر برسد، اما انتخاب گوشی به یک مسئاله برای گلکسی نوت 7 بدل شده، سامسونگ هیچ مشکلی با عرضه نسخه های متعدد از اسمارت فون های خود ندارد، اما می توان بیان داشت که رده گوشی های گلکسی نوت یک نوع گوشی خاص برای مشتریان خاص می باشد و صاحبان گوشی های گلکسی نوت به یک ظاهر و طراحی خاص عادت کرده اند. سامسونگ به تازگی صفحات منحنی را در گوشی های خود جای داده و این ویژگی را به یک قاعده بدل ساخته است، اما گلکسی نوت 7 هم اکنون میزبان این نوع از صفحه نمایش می باشد.
صفحات منحنی مورد پسند تمامی کاربران قرار نمی گیرد و برخی از آنها یک ظاهر مسطح را ترجیح می دهند، با این اوصاف عدم وجود گزینه های در دسترس به معنای عدم وجود انعطاف برای قیمت می باشد، بدین ترتیب که تنها یک نوع گوشی نوت 7 وجود دارد که دارای صفحه نمایش منحنی و قیمت بیشتر از 800 دلار می باشد. از این رو افرادی که خواستار تقبل هزینه کمتری هستند از گزینه های با حجم ذخیره سازی کمتر یا بدون اسکنر عنبیه برخوردار نیستند. چنانچه سامسونگ اقدام به ساخت نسخه ها و مدل های دیگری از این گوشی می کرد، چنین شرایطی پیش نمی آمد.
جوانب زشت

سوالی که پیش می آید این است که آیا این گوشی گران قیمت واقعا ارزش صرف چنین هزینه ای را دارد؟ این گوشی تغییرات و بهبودها و امکانات نرم افزاری را گرم هم آورده، اما نمی توان آن را یک شاهکار برشمرد. در حقیقت اگر ویژگی های گوشی گلکسی اس 7 و Edge را در نظر بگیرید، آیا به غیر از یک قلم دیجیتال، امکانات چندان متفاوت و قابل توجهی در این گوشی جدید سامسونگ به چشم می خورند؟
شاید اسکنر عنبیه را بتوان به عنوان یکی از ویژگی های منحصر به فرد نوت 7 قلمداد کرد، اما به یقین این ویژگی پس از این در تمامی گوشی های سامسونگ و نه تنها سری نوت جای خواهد گرفت. شایان ذکر است که این گوشی هنوز هم دارای قابلیت پشتیبانی از اپلیکیشن های گسترده نمی باشد و هنوز هم پشتیبانی شخص ثالث برای آن وجود ندارد. این گوشی از صفحه نمایش منحنی شکل برخوردار بوده، اما ابتکارات چندان مشهودی را در سطح سخت افزاری صفحه نمایش شاهد نیستیم، تنها یک صفحه نمایش از نوع QHD Super AMOLED از سامسونگ. نوت 7 گوشی نسل جدید تلقی می شود، اما از لحاظ مشخصات، طراحی و زرق و برق چندان قابل توجه نمی باشد. واقعیت نه چندان زیبا درباره گلکسی نوت 7 این است که این گوشی بسیار خوب و قدرتمند در دنیای گوشی های بسیار خوب و مقرون به صرفه ای است که بسیاری از آنها را خود کمپانی سامسونگ ساخته است.
منبع:
http://www.androidheadlines.com
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
طول عمر باتری یکی از بزرگ ترین نگرانی ها و مشکلات گوشی های اندروید می باشد، همگی می خواهیم تا گوشی های خود را در طول روز بدون نیاز به شارژ مجدد مورد استفاده قرار دهیم و اغلب نیز جهت دستیابی به چنین شرایطی اقدامات جدی نیز صورت می دهیم. اما مقصر اصلی در مصرف باتری اپلیکیشن هایی مانند پوکمون گو هستند، در حالی که شناسایی این اپلیکیشن ها اغلب چندان آسان هم نمی باشد. در این مقاله قصد داریم تا به شرح بهترین راه برای تشخیص این اپلیکیشن ها و اقدامات لازم بپردازیم، با ما همراه باشید.
تشخیص اپلیکیشن مشکل ساز
بعضی اوقات اپلیکیشن هایی که به تصور ما کاربردی هستند و یا آنها را مکررا در طول روز مورد استفاده قرار می دهیم، باتری زیادی نیز مصرف می کنند. چنانچه یک گوشی رده بالا و قدرتمند داشته باشید این موضوع کارآیی آن را چندان تحت تاثیر قرار نمی دهد و شاید حتی متوجه مشکل هم نشوید. اما با در نظر گرفتن این موضوع که اثربخشی باتری های اسمارت فون به مرور زمان کاهش پیدا می کند، تلاش برای کاهش مصرف باتری در بلندمدت نتیجه بخش خواهد بود.
به منظور کشف آن دسته از اپلیکیشن هایی که باتری بیشتری مصرف می کنند به منوی Settings اندروید مراجعه کرده و Power Management را بزنید، توجه کنید که شاید این بخش در گوشی شما Battery نام داشته باشد، با این اقدام لیست تمامی اپلیکیشن ها و امکانات گوشی را مشاهده خواهید کرد.

پس از تشخیص عامل خالی شدن باتری چه کار باید کرد؟
زمانی که اپلیکیشنی را که مقدار زیادی از باتری را مصرف می کند، شناسایی کردید می توانید درباره اقدام بعدی خود تصمیم گیری کنید. به بخش Settings رفته و Applications را بزنید و اپلیکیشن موردنظر را از فهرست اپلیکیشن های نمایش داده شده پیدا کنید. ساده ترین راه حل این است که داده ها و کش اپلیکیشن را برای رفع این مشکل پاک کنید، اما راه حل بهتر force-stop اپلیکیشن و ری استارت کردن آن می باشد.، پس از این کار لازم است تا بر اپلیکیشن نظارت کنید.
راه حل دیگر پیدا کردن یک اپلیکیشن معادل در گوگل پلی است، حتی ممکن است دیگر تمایلی به استفاده از این اپلیکیشن نداشته باشید، در این صورت در همان صفحه بر روی دکمه uninstall زده و خیال خود را راحت کنید.
در صورتی که اپلیکیشن ها مقصر مصرف بالای باتری نباشند چه اقدامی باید صورت داد؟
در برخی از شرایط این اپلیکیشن نیست که موجب خالی شدن باتری گوشی می شود، بلکه یکی از عملیات اسمارت فون شما موجب چنین شرایطی شده است. اگر صفحه نمایش مقصر باشد، نور آن را کاهش دهید، چرا که همیشه به نور بالای گوشی نیازی نیست، مدت زمان فعال ماندن گوشی را نیز کم کنید.

حضور صفحه گوشی در ابتدای لیست عملیاتی که باتری را خالی می کنند بسیار طبیعی است، اما اگر درصد آن بیش از اندازه باشد لازم است اقدامات مذکور را صورت دهید. نمی توان یک اندازه دقیق برای آن بیان کرد، چرا که این امر به میزان استفاده شما بستگی دارد، از این رو باید تلاش کنید تا نور صفحه را با توجه به وضعیت خود تنظیم نمایید. این راه حل ها ساده و ابتدایی هستند ولی در بسیاری از شرایط می توانند کاهش محسوسی در میزان مصرف باتری اسمارت فون شما داشته باشند.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
در مطلب قبلی شما را با محبوب ترین بازی های مولتی پلیر آشنا کردیم، در ادامه با ما همراه باشید تا به معرفی سایر بازی های مولتی پلیر برتر بپردازیم.
بازی Spider Square شباهت زیادی به Dual داشته و این بازی نیز بسیار ساده اما در عین حال اعتیادآور است. با انتخاب از بین هزاران مربع عنکبوتی می توانید به جمع آوری جم ها و فتح غارها بپردازید، امکان مشاهده رتبه در لیدربورد نیز برای شما فراهم شده است.

راه های گوناگونی برای انجام بازی Spider Square وجود دارند، می توانید در حالت های easy و normal خود به تنهایی بازی کنید و یا با دوستان خود و به صورت آنلاین از این بازی لذت ببرید. امکان شرکت در چالش های مولتی پلیر متفاوت نیز برای شما فراهم شده و این بازی ساده نیز می تواند به یک چالش واقعی تبدیل شود، فکر می کنید می توانید دوستان خود را در فتح غارها شکست دهید؟
عنوان این بازی برای همه بسیار آشناست و این بازی توانسته محبوبیت زیادی بین کاربران پید کند. Clash of Clans هنوز هم یکی از روان ترین و بهترین بازی های مولتی پلیر می باشد، در این بازی می توانید با دوستان خود تیم تشکیل داده و با افراد در بخش های دیگر جهان بازی کنید.

محبوبیت این بازی در گروی گرافیک های حیرت آور و قابلیت تشکیل ارتش جادوگران، کمان داران و اقوام وحشی است. علاوه بر این کلش اف کلنز دارای امکانات متعدد دیگری نیز هست و این قابلیت که می توانید با دیگران تیم تشکیل داده و دشمنان خود را شکست دهید و یا به تنهایی به مبارزه پرداخته و پیروزی خود را اعلام کنید، بسیار خارق العاده و هیجان انگیز است.
بازی قایم باشک به صورت دیجیتال و در حالی که بر روی مبل راحتی خود لم داده باشید، 100 برابر جذاب تر و هیجان انگیزتر است. Prop Hunt نیز دقیقا انجام چنین کاری را برای شما میسر می گرداند. بسته به تیمی که در آن قرار دارید، زمان مشخصی به شما اختصاص داده می شود تا یک مکان برای مخفی شدن پیدا کرده و خود را پنهان کنید. تیم دیگر باید تا قبل از تمام شدن وقت شما را پیدا کند، بدین ترتیب برنده بازی مشخص می شود.

حالت ها و روش های گوناگونی برای انجام این بازی وجود دارند و یقینا بازی Prop Hunt نیز به بازی موردعلاقه شما تبدیل می شود. شما به راحتی می توانید به بازی بپیوندید و هر چیزی مانند سطل زباله، تیر چراغ برق خیابان یا بوته را برای پنهان شدن انتخاب کنید. آیا کسی شما را دنبال کرده؟ نگران نباشید، دلیلی برای ساکن ماندن در آنجا وجود ندارد. در حقیقت می توان گفت که بازی Prop Hunt نسخه خنده دار بازی قایم باشک کلاسیک است که همگی ما آن را می شناسیم و دوستش داریم.
برای افرادی که رشته آنها زبان انگلیسی است یا به دنبال گسترش دایره لغات انگلیسی خود هستند، Ruzzle یکی از بهترین بازی های کلمه ای موجود در اندروید می باشد. شما می توانید به تنهایی و با محدودیت زمانی این بازی را انجام دهید و یا با افراد دیگر بازی کنید. هر کسی که در زمان تعیین شده بیشترین لغات را بسازد امتیاز بیشتری دریافت خواهد کرد.

یکی از ویژگی های منحصر به فرد این بازی به تعاملات بسیار زیاد آن که فراتر از تنها متصل کردن حروف به یکدیگر است، مربوط می باشد. می توانید آشنایان خود را به فهرست دوستان خود در بازی اضافه کنید و یا با افراد تصادفی از سرتاسر دنیا این بازی را انجام دهید. امکان چت با حریف در بین راندهای بازی نیز برای شما فراهم شده و این قابلیت نیز بسیار جذاب و سرگرم کننده می باشد.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
روز گذشته اینستاگرام قابلیت جدیدی به نام Stories را معرفی نمود که به کاربران این شبکه اجتماعی محبوب امکان آپلود تصاویر و ویدیوهایی را می دهد که پس از گذشت 24 ساعت ناپدید می شوند، شاید این قابلیت برای شما نیز بسیار آشنا بنماید، چرا که اسنپ چت نیز مشابه همین امکان را در اپلیکیشن خود قرار داده است.
اینستاگرام در وبلاگ رسمی خود اعلام کرد که لازم نیست کاربران برای تعداد زیاد پست ها هیچگونه نگرانی داشته باشند، آنها به راحتی قادر به اشتراک گذاری هر تعداد پست در طول یک روز هستند و می توانند از نهایت خلاقیت خود در پست ها بهره بگیرند. کاربران قادرند با استفاده از روش های جدید و با کمک متون و ابزارهای نقاشی روح و جان تازه ای به عکس های خود ببخشند، تصاویر و ویدیوها پس از 24 ساعت از فید یا گرید پروفایل شما حذف خواهند شد.

Stories افرادی که دنبال می کنید نیز در نوار بالای فید شما ظاهر می شود، اما بر خلاف پست های معمولی، تصاویر و ویدیوهای آپلود شده به Stories در حال حاضر از گزینه های لایک و کامنت محروم اند و اگر بخواهید نظری برای چنین پست هایی ارسال کنید باید از طریق پیام خصوصی با ارسال کننده آن ارتباط برقرار کنید.
تنظیمات خصوصی برای Stories نیز دقیقا مشابه این تنظیمات برای قسمت های دیگر حساب کاربری شماست، اما می توانید گزینه مخفی سازی فید 24 ساعته از هر کس، حتی افرادی که شما را دنبال کرده اید نیز انتخاب نمایید، امکان مشاهده لیست افرادی که تصاویر و ویدیوهای شما در بخش Stories را دیده اند نیز وجود دارد.
این قابلیت تا چند هفته دیگر به صورت جهانی برای کاربران اندروید و آی او اس منتشر خواهد شد. این اقدام از سوی فیسبوک که صاحب رسمی اینستاگرام است به معنای شروع یک رقابت با اسنپ چت می باشد که سرویس کاملا مشابهی را در سال 2014 منتشر ساخته و آن را Stories نام نهاده است.
Kevin Systrom مدیرعامل اینستاگرام در مصاحبه خود با TechCrunch در پاسخ به این پرسش که اسنپ چت پیشگام این فرمت بوده، بیان داشت که آنها سزاوار این اعتبارند.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
فعال سازی Developer Options در گوشی اندروید امکانات متعددی را در اختیار توسعه دهندگان اپلیکیشن ها و بازی های موبایل قرار می دهد و در مقاله قبلی با چند قابلیت کاربردی از آن آشنایی پیدا کردید، در این مقاله نیز قصد داریم شما را با سایر امکاناتی که Developer Options در اختیار شما قرار می دهد آشنا کنیم، با ما همراه باشید.
15. Power menu bug reports: این بخش یک گزینه به منویی که در زمان فشار دادن و نگه داشتن دکمه پاور مشاهده می کنید، اضافه می نماید و شما را قادر به جمع آوری و ارسال گزارش خطا می کند.

16. Process stats: این گزینه یکی از گزینه هایی است که در صورت خاموش کردن Developer Options فعال باقی می ماند، این قابلیت اطلاعات بسیار زیادی از آنچه در اسمارت فون یا تبلت شما می گذرد نمایش می دهد.
17. Profile GPU rendering: این تنظیمات یک گراف رسم می کند که نمایش دهنده رندرینگ بصری عملکرد GPU است، شما می توانید این گراف را در صفحه مشاهده کرده و یا آن را به صورت یک فایل ذخیره کنید.
18. Select debug app: با کمک این قابلیت می توانید یک اپلیکیشن را انتخاب کرده و آن را دیباگ کنید.
19. Select USB configuration: این بخش نحوه عملکرد گوشی اندروید وقتی که با استفاده از کابل یو اس بی به کامپیوتر متصل شده است را مشخص می کند.
20. Select runtime: در اینجا قادر به انتخاب Dalvik یا ART هستید و این بخش برای آن دسته از توسعه دهندگانی که در حال ساخت اپلیکیشن برای اندروید L هستند اهمیت دارد.
21. Show all ANRs: این گزینه در صورت بروز مشکل در پردازش ‘App Not Responding’ را نمایش می دهد، حتی اگر فرآیند در پس زمینه در حال اجرا باشد نیز این پیام نشان داده می شود، اگر اپلیکیشنی که می سازید که با فرآیند دیگری تداخل پیدا کرده و می خواهید دلیل مشکل را بدانید، این ابزار برای شما کاربردی خواهد بود.
22. Show CPU usage: شما را قادر به مشاهده اطلاعاتی درباره CPU می کند.
23. Show GPU view updates: فعال سازی این قابلیت باعث می شود که هر عنصر موجود در صفحه نمایش که با سخت افزار GPU رسم شده با یک پوشش قرمز مشاهده شود.
24. Show hardware layer updates: به شما زمان آپدیت شدن لایه های سخت افزاری را می گوید.
25. Show layout bounds: این ابزار کاربردی گوشه های تمامی عناصر را نشانه گذاری می کند، بدین ترتیب می فهمید که لمس چه قسمتی آنها را فعال می کند.
26. Show surface updates: انتخاب این گزینه باعث می شود که گوشه های پنجره نمایش داده شده در صفحه، زمانی که محتوا آپدیت می شود چشمک بزنند.
27. Show touches: این گزینه یک نشانه بصری در زمان ثبت لمس در صفحه اضافه می کند.
28. Simulate secondary displays: امکان شبیه سازی اندازه های متفاوت صفحه نمایش را امکان پذیر می کند.
29. Strict mode enabled: وقتی که اپلیکیشن از ترد اصلی برای عملیات طولانی و فشرده استفاده می کند، صفحه را خاموش و روشن می نماید.
30. Transition animation scale: این تنظیمات سرعت پلی بک ترانزیشن-انیمیشن را تعیین می کند.
31. USB debugging: گوشی اندروید را قادر به برقراری ارتباط از طریق یو اس بی و ADB می کند. شما قادر به لغو مجوز USB debugging نیز هستید، وفتی که برای اولین بار از کامپیوتر جهت دیباگ از طریق یو اس بی استفاده می کنید باید مجوز این کار را با ساخت جفت کلیدها اعطا کنید، این تنظیمات آن امتیاز را لغو می کند.
32. Verify apps over USB: با استفاده از این تنظیمات گوگل اپلیکیشن های نصب شده شما را اسکن می کند.
33. Wait for debugger: تا زمانی که دیباگ اپلیکیشن را شروع نکنید این گزینه فعال نمی شود، فعال سازی این گزینه اپلیکیشن را از شروع قبل از متصل بودن دیباگر منع می کند.
34. Window animation scale: سرعت پلی بک window-animation را تعیین می نماید.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
اپلیکیشن های نصب شده بر روی اسمارت فونها رایج ترین روش برای ارتباط با اینترنت و سایر سرویس های مورد استفاده می باشد، از طرفی ویکی پدیا یکی از وب سایت هایی است که به طور فعالانه آن را مورد استفاده قرار می دهیم. نسخه موبایل ویکی پدیا در طول این سال ها میزبان پیشرفت های متعددی بوده و هم اکنون توجه خود را بر روی اپلیکیشن اندروید معطوف کرده است، چشمگیرترین بخش از آپدیت به ظاهر جدید این اپلیکیشن ارتباط پیدا می کند، در حالی که این بار تمرکز بر روی بخش اخبار معطوف شده است، با این امید که کاربران زمان بیشتری را در اپلیکیشن صرف نموده و از آنچه ویکی پدیا ارائه می دهد بیشترین بهره را خواهند برد. مانند همیشه این نسخه جدید از اپلیکیشن نیز کاملا رایگان است و همین امر دانشی را که ویکی پدیا ارائه می دهد بسیار ارزشمند می سازد.

ظاهر جدید اپلیکیشن از جهاتی مشابه Google Now است و بسیار خوب و زیبا می نماید و هر بخش به کارت های جداگانه ای تقسیم شده است. Photo of the Day و Article of the Day نیز در اپلیکیشن جای خود را یافته اند و In the News نیز در ابتدا و وسط اپلیکیشن و دقیقا در زیر نوار جستجو قرار گرفته است.

بخش In the News به خوانندگان امکان مطالعه سریع خلاصه مطلب را می دهد و سپس فهرست های مرتبط ویکی پدیا در قسمت زیر لینک می شود و خوانندگان می توانند با اشاره بر روی هر کدام، آن را مطالعه کنند. نسل امروز با این سبک از اخبار که در توییتر نیز به خوبی پیاده سازی شده، آشنایی بیشتری دارند، از این رو بهره گیری از این روش از سوی ویکی پدیا اقدامی عاقلانه به نظر می رسد، بدین طریق کاربران محتوا ویکی پدیا را مطالعه می کنند و همین امر به نفع آنها تمام می شود.

این آپدیت برای اپلیکیشن ویکی پدیا بسیار مناسب و معقول به نظر می رسد، شاید اپلیکیشن هایی متعدد دیگری هم در اندروید وجود داشته باشند که عملکرد بهتری نسبت به ویکی پدیا به نماش گذارند، اما هدف اولیه ویکی پدیا آموزش و اطلاع رسانی در بلندمدت می باشد و این آپدیت جدید نیز این کار را به خوبی انجام داده است.

منبع:
http://www.androidheadlines.com
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
در مقاله های قبلی شما را با مقدماتی درباره عبارت های منظم و سینتکس نوشتن آنها آشنا کردیم، در این مطلب قصد داریم آنچه را که در مطلب قبلی فرا گرفتیم در عمل پیاده سازی کرده و عبارت های منظم را در سوئیفت مورد استفاده قرار دهیم.
1. عبارت های منظم در سوئیفت
Xcode را باز کنید و یک Playground جدید به نام RegExTut بسازید و پلتفرم را هم به OS X ست کنید. انتخاب iOS یا OS X برای پلتفرم فرقی نمی کند چرا که API مورد استفاده برای هر دوی آنها عملکرد یکسانی دارد.

در سوئیفت باید از دو \ به جای هر استفاده شده در عبارت منظم بهره بگیرید، زیرا سوئیفت دارای سبک لفظی مشابه سی است. بک اسلش علاوه بر نقش آن در الحاق رشته در سوئیفت، به عنوان یک کاراکتر اسکیپ پردازش می شود، به بیان دیگر باید کاراکتر اسکیپ را رد کنید. شاید هنوز هم این موضوع برای شما کمی سردرگم کننده باشد، اما این موضوع را به خاطر سپارید که باید به جای یک بک اسلش دو بک اسلش را مورد استفاده قرار دهید.
در اولین مثال فرض می کنیم که در رشته موردنظر به دنبال یک نوع بسیار خاص از آدرس ایمیل هستیم که دارای شرایط زیر است:
– حرف اول رشته حرف اول نام شخص است.
– یک نقطه پس از آن آمده است.
– نام خانوادگی شخص پس از آن آمده است.
– کاراکتر @ پس از آن ظاهر شده است.
– پس از آن یک نام که نشان دهند یک دانشگاه در انگلستان است می آید.
– پس از آن ac.uk. که دامین موسسات آکادمیک در انگلستان است قرار می گیرد.
کد زیر را به playground اضافه کنید، حال گام به گام به نحوه عملکرد این قطعه کد می پردازیم.
|
1 2 3 4 5 6 7 8 9 10 |
import Cocoa // (1): let pat = "\b([a-z])\.([a-z]{2,})@([a-z]+)\.ac\.uk\b" // (2): let testStr = "x.wu@strath.ac.uk, ak123@hotmail.com e1s59@oxford.ac.uk, ee123@cooleng.co.uk, a.khan@surrey.ac.uk" // (3): let regex = try! NSRegularExpression(patte: pat, options: []) // (4): let matches = regex.matchesInString(testStr, options: [], range: NSRange(location: 0, length: testStr.characters.count)) |
گام 1
ما یک الگو را تعریف کرده ایم، به بک اسلش های دوگانه توجه کنید. در عبارت های منظم معمولی مانند آنچه در وب سایت RegExr استفاده شده، این عبارت به شکل a-z]).([a-z]{2,})@([a-z]+).ac.uk]) می آید. به کاربرد پرانتزها در عبارت منظم توجه کنید، این پرانتزها برای تعریف کپچر گروپ ها مورد استفاده قرار می گیرند و با کمک آنها می توانیم زیررشته هایی را که با بخشی از عبارت منظم مطابقت دارند بیرون بکشیم.
اولین گروه تعیین کننده نام شخص است، دومین گروه نام خانوادگی را می گیرد و سومین بخش نیز به نام دانشگاه مربوط می باشد. به کاربرد بک اسلش جهت رد کردن کاراکتر . و استفاده از معنای لفظی آن نیز توجه کنید. به جای استفاده از بک اسلش می توانیم . را به شکل [.] استفاده کنیم.
گام 2
این بخش رشته ای است که در آن به دنبال الگوی موردنظر خود می گردیم.
گام 3
ما یک آبجکت NSRegularExpression می سازیم و الگو را بدون آپشن ارسال می کنیم. در لیست گزینه ها می توانید ثابت های NSRegularExpressionOption مانند زیر مشخص کنید:
CaseIntensive: این گزینه مشخص می کند که تطبیق رشته حساسیتی نسبت به بزرگی و کوچک حروف ندارد.
IgnoreMetacharacter: از این گزینه در صورتی که مایل به انجام یک تطبیق لفظی هستید استفاده کنید، به این معنا که متاکاراکترها دارای معنای خاصی نیستند و مانند کاراکترهای معمولی با آنها رفتار می شود.
AnchorMatchLines: اگر مایل به استفاده از ^ و & هستید که نشان دهنده شروع و پایان خطوط در یک رشته منفرد به جای شروع و پایان کل رشته هستند، این گزینه را مورد استفاده قرار دهید.
از کلمه کلیدی try استفاده می کنیم، در صورت ارسال یک عبارت منظم نامعتبر خطا نمایش داده خواهد شد.
گام 4
با اجرای (:matchsInString ( _:options:range در رشته به دنبال تطبیق هایی می گردیم و در قسمت range باید بخشی از رشته را که مورد نظر ماست قرار دهیم. این متد چندین گزینه را نیز می پذیرد، اما برای سادگی کار هیچ گزینه ای را در این مثال ارسال نمی کنیم و در مثال بعدی به آن خواهیم پرداخت.
تطبیق ها به صورت یک آرایه از آبجکت های NSTextCheckingResult برگردانده می شود و می توانیم تطبیق ها را استخراج کنیم، برای نمونه کپچر گروپ ها مانند زیر:
|
1 2 3 4 5 6 7 8 |
for match in matches { for in 0..<match.numberOfRanges { let range = match.rangeAtIndex() let r = testStr.startIndex.advancedBy(range.location) ..< testStr.startIndex.advancedBy(range.location+range.length) testStr.substringWithRange(r) } } |
قطعه کد بالا در هر آبجکت NSTextCheckingResult در آرایه پیمایش می کند. ویژگی numberOfRanges برای هر تطبیق در این مثال دارای مقدار 4 است. یکی از آنها برای کل زیررشته که مطابق با آدرس ایمیل مربوطه است و سه تطبیق دیگر برای سه کپچر گروپ در داخل تطبیق.
متد (:_)rangeAtIndex یک محدوده از زیررشته ها در رشته را برمی گرداند و می توانیم آنها را استخراج کنیم، به جای استفاده از (rangeAtIndex(0 می توانید از ویژگی range برای کل تطبیق نیز استفاده نمایید.
بر روی دکمه Show Result در پنل نتایج در قسمت راست کلیک کنید، این کار Surrey یعنی مقدار (testStr.substringWithRange(r را برای آخرین تکرار حلقه نشان می دهد.
با کلیک راست بر روی فیلد نتایج و انتخاب Value History می توانید تاریخچه مقادیر را مشاهده کنید.

شما می توانید کد بالا را تغییر دهید تا عملیات بامعنایی با تطبیق ها یا کپچر گروپ ها انجام دهد.
راه آسانی برای اجرای عملیات یافتن و جایگزین کردن وجود دارد، این کار از طریق یک رشته الگو که دارای یک سینتکس خاص جهت نمایش کپچر گروپ است انجام می شود. تصور کنید که می خواهیم تمامی تطبیق های آدرس ایمیل را با یک زیر رشته به فرم lastname, initial, university جایگزین کنیم، برای این کار به این صورت عمل می کنیم:
|
let replacedStr = regex.stringByReplacingMatchesInString(testStr, options: [], range: NSRange(location: 0, length: testStr.characters.count), withTemplate: "($2, $1, $3)") |
به سینتکس n$ در الگو توجه کنید که در نقش پلیس هولدر برای متن کپچر گروپ n ظاهر می شود. به خاطر داشته باشید که 0$ نمایش دهنده کل تطبیق است.
در مطلب آینده به شرح مثال دیگری خواهیم پرداخت که کار با عبارت های منظم را به شکل واضح تری به نمایش خواهد گذاشت، با ما همراه باشید.
منبع:
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار
بازی Pokemon GO محبوبیت بسیار زیادی را کسب کرده و توانسته از زمان انتشار خود یعنی حدودا سه هفته پیش تاکنون دنیای بازی های موبایل را تحت سلطه خود بگیرد. در این بازی حقیقت افزوده پوکمون ها در دنیای واقعی قرار گرفته اند و بازیکنان باید پوکمون های مخفی شده را پیدا کنند. با در نظر گرفتن محبوبیت بازی در بین کاربران، Pokemon GO درآمد بسیار زیادی را نیز از آن خود می کند و همانطور که از گزارشات پیداست، بازی روزانه 10 میلیون دلار درآمد کسب می نماید.

مبنی بر یافته های App Aie مبلغ 10 میلیون دلار به طور روزانه از گوگل پلی استور و اپ استور کمپانی اپل عاید بازی Pokemon GO می شود. به بیان یکی از تحلیلگران کمپانی به نام Sameer Singh بازی Pokemon GO یک افزوده برای صنعت بازی های موبایل است و درآمد کسب شده از سوی سایر بازی های موبایل را از بین نبرده است. به اعتقاد کمپانی بازی Pokemon GO هیچگونه تاثیری بر روی درآمد سایر بازی ها در پلی استور و اپ استور اپ نداشته است. Singh اشاره می کند که پس از انتشار بازی در آمریکا درآمد روزانه سایر بازی ها کاهش پیدا کرد، اما تنها چند روز بعد شرایط به وضعیت نرمال بازگشت. اما شرایط در آلمان و انگلستان به گونه ای دیگر بود، درآمد روزانه سایر بازی ها کاهش پیدا کرد، اما این وضعیت در مقایسه با روند پیش از انتشار مستمر بوده است. از سوی دیگر بازی های موبایل در استرالیا پس از انتشار Pokemon GO افزایش اندکی را در درآمد خود شاهد بودند.
به ادعای App Aie کاهش چشمگیری در درآمد بازی های محبوبی مانند کلش اف کلنز، موبایل استریک و کندی کراش ساگا مشاهده نشده است و کمپانی بیان داشته که شرایط چندان تعجب آور نیست، چرا که بخش انبوهی از درآمد بازی ها از گروه کوچکی از کاربران بدست می آید و این دسته از بازیکنان به احتمال زیاد با یک یا دو بازی تعامل دارند نه چندین بازی. بازی Pokemon GO تاثیری اندکی هم بر روی زمان متوسطی که کاربر صرف سایر بازی ها و اپلیکیشن ها در گوشی های اندروید می کند داشته است، زمان متوسط صرف شده در بازی Pokemon GO در نخستین هفته پس از انتشار خود از زمان متوسط سایر اپلیکیشن های محبوب مانند فیسبوک، اسنپ چت و واتس اپ پیشی گرفته است.
منبع:
http://www.androidheadlines.com
این نوشته را به گوگل توصیه کنید :
برچسب:
نویسنده: استخدام کار